Draft
Conversation
Contributor
Author
|
As stated above, I don't think that this PR has much of a future. But if there is interest in introducing Meson to XBPS or if this could be discussed further, I'd be willing to continue working on it. This PR is production ready (except for missing tests and git revisions which both require modifying files). Fully static XBPS builds can be set up like this under Musl: |
-Werror is dropped, because Meson's werror is more strict than configure one. This implementation does not support running tests. The Kyua testsuite heavily relies on in-source builds. Tests would have to be rewritten (at least the Kyuafile files, but probably more) to support Meson. Meson does not support retrieving git info and providing it as a compiler flag. Meson's vcs_tag() mechanism supports outputting to a (header or source) file only. This would mean that xbps.h.in would have to be modified. No substitution is done on xbps.h.in. See void-linux#598 for explanation. _DEFAULT_SOURCE is dropped, because _GNU_SOURCE implies _DEFAULT_SOURCE. -D_FILE_OFFSET_BITS=64 is set automatically by Meson. Work in progress!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
I do not expect this PR to be merged. As I understand it, XBPS is not under active development. Features & bugfixes are accepted when they are needed, active development of features is not the focus of XBPS. The current
configuresystem works, so I don't think this PR will be merged.I have discussed my intention of introducing Meson to XBPS in
#xbpssome time ago.I wanted to take a look at the internals of XBPS. I wanted to begin at the build system level to become familiar with XBPS's structure. This PR is a result of that. I also wanted to review the current build system. I have found #598 thanks to this. I have found additional issues while revisiting this now, but they are too inconsequential to make a PR for them.
I also find Meson more practical to work with both as an user and as a developer. Out of the box
compile_commands.jsonsupport,ccacheenabled by default, easy management of sanitizers etc. can be useful for development. Having an alternative build system can be an useful resource when debugging certain issues.Pros:
compile_commands.jsonsupportCons:
>=1.3.0(it shouldn't be that hard to support an earlier version though)